package com.py.outbound.domain;

import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;

/**
 * 【请填写功能名称】对象 wh_inventory
 * 
 * @author ruoyi
 * @date 2024-12-02
 */
public class WhInventory extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Integer inventoryQueryId;

    /** 商品编号 */
    @Excel(name = "商品编号")
    private String productCode;

    /** 仓库编号 */
    @Excel(name = "仓库编号")
    private String warehouseCode;

    /** 当前库存 */
    @Excel(name = "当前库存")
    private Integer currentInventory;

    /** 库位编号 */
    @Excel(name = "库位编号")
    private String locationCode;

    /** 库存金额 */
    @Excel(name = "库存金额")
    private BigDecimal inventoryValue;

    /** 待入库 */
    @Excel(name = "待入库")
    private Integer pendingIn;

    /** 待出库 */
    @Excel(name = "待出库")
    private Integer pendingOut;

    /** 可用库存金额 */
    @Excel(name = "可用库存金额")
    private BigDecimal availableInventoryValue;

    /** 库存上限 */
    @Excel(name = "库存上限")
    private Integer inventoryUpperLimit;

    /** 库存下限 */
    @Excel(name = "库存下限")
    private Integer inventoryLowerLimit;

    public void setInventoryQueryId(Integer inventoryQueryId)
    {
        this.inventoryQueryId = inventoryQueryId;
    }

    public Integer getInventoryQueryId()
    {
        return inventoryQueryId;
    }
    public void setProductCode(String productCode) 
    {
        this.productCode = productCode;
    }

    public String getProductCode() 
    {
        return productCode;
    }
    public void setWarehouseCode(String warehouseCode) 
    {
        this.warehouseCode = warehouseCode;
    }

    public String getWarehouseCode() 
    {
        return warehouseCode;
    }
    public void setCurrentInventory(Integer currentInventory)
    {
        this.currentInventory = currentInventory;
    }

    public Integer getCurrentInventory()
    {
        return currentInventory;
    }
    public void setLocationCode(String locationCode) 
    {
        this.locationCode = locationCode;
    }

    public String getLocationCode() 
    {
        return locationCode;
    }
    public void setInventoryValue(BigDecimal inventoryValue) 
    {
        this.inventoryValue = inventoryValue;
    }

    public BigDecimal getInventoryValue() 
    {
        return inventoryValue;
    }
    public void setPendingIn(Integer pendingIn)
    {
        this.pendingIn = pendingIn;
    }

    public Integer getPendingIn()
    {
        return pendingIn;
    }
    public void setPendingOut(Integer pendingOut)
    {
        this.pendingOut = pendingOut;
    }

    public Integer getPendingOut()
    {
        return pendingOut;
    }
    public void setAvailableInventoryValue(BigDecimal availableInventoryValue) 
    {
        this.availableInventoryValue = availableInventoryValue;
    }

    public BigDecimal getAvailableInventoryValue() 
    {
        return availableInventoryValue;
    }
    public void setInventoryUpperLimit(Integer inventoryUpperLimit)
    {
        this.inventoryUpperLimit = inventoryUpperLimit;
    }

    public Integer getInventoryUpperLimit()
    {
        return inventoryUpperLimit;
    }
    public void setInventoryLowerLimit(Integer inventoryLowerLimit)
    {
        this.inventoryLowerLimit = inventoryLowerLimit;
    }

    public Integer getInventoryLowerLimit()
    {
        return inventoryLowerLimit;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("inventoryQueryId", getInventoryQueryId())
            .append("productCode", getProductCode())
            .append("warehouseCode", getWarehouseCode())
            .append("currentInventory", getCurrentInventory())
            .append("locationCode", getLocationCode())
            .append("inventoryValue", getInventoryValue())
            .append("pendingIn", getPendingIn())
            .append("pendingOut", getPendingOut())
            .append("availableInventoryValue", getAvailableInventoryValue())
            .append("inventoryUpperLimit", getInventoryUpperLimit())
            .append("inventoryLowerLimit", getInventoryLowerLimit())
            .toString();
    }
}
